1. Field of the Invention
The invention relates to a binary data output interface. It can be applied to the creation of program instructions performed by an ASIC type circuit when it is necessary to be able to supply, outside the circuit, certain internal information elements that are inaccessible at dedicated access pads. This is also called tracing.
2. Discussion of the Related Art
Many integrated circuits, such as application specific integrated circuits (ASICs), have a central processing unit or processor and a program memory. This memory is generally of the ROM (read-only memory) type. The memory is connected to the central processing unit by address, data and control buses and contains a program of instructions performed by the central processing unit.
When an integrated circuit of this kind has to be made on a silicon chip, various tests have to be applied to it. Typically, two distinct types of tests are carried out. First, the circuits physical constitution (the characteristics of the components, connections, etc.) is verified by the sending of stimulation signals. This type of test is performed in practice on all the circuits made, thus this test is done at the development stage and at the batch production stage. The testing of the physical constitution is done, for example, by placing shift registers in the circuits. These shift registers allow the injection of data elements into the circuit, through a series link, and then allow sampling the output, of the logic states present in the internal lines of the circuit through the series link. Furthermore, the logic operation of the circuit, i.e. the way in which it performs the program contained in the program memory, is verified. This type of test is done in the development stage.
To test the running or flow of the program, it is desirable to ascertain whether or not the programmed instructions are sequenced as expected. One method used for this testing consists of stopping the program by the installation of breakpoint devices when certain conditions are verified. This type of test makes it possible to verify, for example, the values placed in the access buses to the central processing unit after a particular instruction is carried out, and then to resume the performance of the program. One drawback of this type of test is that no accurate view is had of the definitive functioning of the circuit since this functioning is disturbed by the fact that the flow of the program is stopped. It is therefore often preferred also to carry out a test under real conditions, namely to observe or trace the flow of the program without stopping it. This observation may be done either in real time or in deferred time.
If it is desired to analyze the real-time flow of the program, an analysis is performed by means of a logic analyzer. The real-time analysis requires that the information elements be obtained directly, during the performance of the program, at the access pads of the circuit. This approach is not acceptable in practice unless these ports have a functional utility in the habitual use of the circuit and are not specifically dedicated to the test. The size of an integrated circuit is directly a function of the number of access pads to this circuit. It is commonly sought to make circuits that are as compact as possible.
To carry out the observation in deferred time, the successive values of the address counter associated with the program memory are stored in the circuit or outside the circuit. Then, an analysis is performed after the fact of the sequencing of these values. In one approach, the information elements are output in series. This makes it possible to resolve the problem of the space requirement but requires that the information output bit rate be low.
One aim of the invention is to enable the output of information elements with a relatively high bit rate from an integrated circuit with a small number of access pads.